home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Special 23 / AMIGAplus Sonderheft 23 (2000)(Falke)(DE)[!].iso / Tools / Text-Viewer / MSWordView / notes / ole / olemessage / text0001.txt < prev   
Encoding:
Text File  |  1999-11-06  |  2.2 KB  |  54 lines

  1. Hello.
  2.  
  3. Andrew, I have studied your excellent code. Thank you for writting it! I
  4. never though that a replacement for LAOLA in C could be done in a very few
  5. lines of code.  And thank you to explain me about directories in OLE files
  6. too. It is easy, but I didn't understood until you explain it to me. Thank
  7. you again. 
  8.  
  9. As attachment (gzipped), I send you guys my own version of the Andrew's
  10. code.  Andrew, if you like it, you could incorporate it to your own version:
  11.  
  12. Changes:
  13.  
  14. * Added a lot of validations (memory allocations and file access).
  15. * Named OLEdecod (Andrew please, rename it again if you want).
  16. * Include the Caolan's read from memory functions (Andrew's functions
  17.   didn't work for me, in Intel, I don't know why).
  18. * Simplified the memory pps structure. Before, pps_list was a pointer to
  19.   an array of pointers to pps_entry. Now, pps_list is a pointer to an
  20.   array of pps_entry. Less memory to allocate!
  21. * Each pps of type file (called by Microsoft streams) are now saved in
  22.   separated temporal files, wich names are in pps_list.
  23. * Added freeOLEtree function, wich should be called after processing the
  24.   tree (see main.c).
  25. * In pps_entry, changed type of next, previous and dir fields: now are U32
  26.   (unsigned long int) for simplicity.
  27. * Added an example (main.c) wich shows how to visit only the top level
  28.   streams (Caolan, see that file).
  29. * Added VERBOSE symbol. Compile the attachment using -DVERBOSE, please.
  30. * Added more bytes that I would want.
  31. * Tested on MS-DOS (compiled with Borland C++ 3.1).
  32.  
  33. Missing:
  34.  
  35. * Don't know how to interpret seconds and days fields.
  36. * The solution to MAXBLOCKS artificial limit.
  37.   Here, one proposed solution:
  38.      Before extract the sbd block list, read all the number blocks from
  39.      BDepot and count it, then allocate the nedded memory and finally
  40.      extract the list.
  41.   This solution should be easy, and fast because we read from memory.
  42.   The same goes for root_list.
  43. * Write and test big endian version of Caolan's read from memory functions.
  44.  
  45. And that's all.
  46.  
  47. Hope you like it. Please, send me your opinions and flames.
  48.  
  49.  
  50. -- Filters Proyect Maintainer: Arturo Tena <filters@centauri.lci.ulsa.mx>
  51. <http://centauri.lci.ulsa.mx/~filters/> (this server is down in weekends :( ) 
  52.  
  53.  
  54.